#ifndef _BSP_SHT30_H_
#define _BSP_SHT30_H_

#include "gd32f4xx.h"

extern double Temperature, Humidity;

#define u8       unsigned char

// 端口移植
#define RCU_SDA  RCU_GPIOE
#define PORT_SDA GPIOE
#define GPIO_SDA GPIO_PIN_3

#define RCU_SCL  RCU_GPIOE
#define PORT_SCL GPIOE
#define GPIO_SCL GPIO_PIN_4

// 设置SDA输出模式
#define SDA_OUT() \
    gpio_mode_set(PORT_SDA, GPIO_MODE_OUTPUT, GPIO_MODE_OUTPUT, GPIO_SDA)
// 设置SDA输入模式
#define SDA_IN() \
    gpio_mode_set(PORT_SDA, GPIO_MODE_INPUT, GPIO_MODE_OUTPUT, GPIO_SDA)
// 获取SDA引脚的电平变化
#define SDA_GET() gpio_input_bit_get(PORT_SDA, GPIO_SDA)
// SDA与SCL输出
#define SDA(x)    gpio_bit_write(PORT_SDA, GPIO_SDA, (x ? SET : RESET))
#define SCL(x)    gpio_bit_write(PORT_SCL, GPIO_SCL, (x ? SET : RESET))

void SHT30_GPIO_Init(void);
char SHT30_Read(uint16_t dat);

#endif